package com.stark.commons.spring.core.boot.properties;

import java.io.Serializable;

import org.springframework.boot.context.properties.ConfigurationProperties;

import lombok.Data;

/**
 * 事务切面自动配置项。
 * @author Ben
 * @since 1.0.0
 * @version 1.0.0
 */
@ConfigurationProperties(prefix = "spring.transaction.aop")
@Data
public class TransactionAopProperties implements Serializable {
	
	private static final long serialVersionUID = 1711126811635277390L;
	
	/** aop 扫描包路径，多个以 "," 隔开 */
	private String basePackages;
	
	/** 只读事务方法名，支持通配符，如 "get*" ，多个以 "," 隔开 */
	private String readOnlyMethods;
	
	/** 写事务方法名，支持通配符，如 "save*" ，多个以 "," 隔开 */
	private String requiredMethods = "*";
	
	/** 超时回滚秒数 */
	private Integer timeout = -1;

}
